package com.zhongan.gateway.service;

import redis.clients.jedis.Jedis;

public interface RedisService {

    Jedis getJedis();

    String get(Jedis jedis, String key);

    void set(Jedis jedis, String key, String value);

    void closeJedis(Jedis jedis);

    void clearCacheByKey(String key);

    /**
     * 流量限制
     * 
     * @param key
     * @param max
     * @return
     */
    boolean overFlow(String key, int max);

    /**
     * 启动熔断统计功能
     * 
     * @param key
     * @return
     */
    int fuse(String key);

    /**
     * 是否已熔断
     * 
     * @param key
     * @return
     */
    boolean isFused(String key);

    /**
     * 打开熔断
     * 
     * @param key
     */
    void openFused(String key);

    /**
     * 
     */
    void clearCache();
}
